import { defineConfig } from 'umi';
import routes from './routes';
import defaultSetting from './defaultSetting';
import proxy from './proxy';

export default defineConfig({
  nodeModulesTransform: {
    type: 'none',
  },
  /*-----------------------------------------------------------------------------------*/
  /*-----------------------------------------------------------------------------------*/

  // build构建时候生成后缀，防止缓存
  // hash: true,

  /*-----------------------------------------------------------------------------------*/
  /*-----------------------------------------------------------------------------------*/

  // 默认路由前缀
  // base: '/admin',

  /*-----------------------------------------------------------------------------------*/
  /*-----------------------------------------------------------------------------------*/

  // build之后静态文件路径前面添加 publicPath 的值,例如：<script src="http://xxx.com/umi.js"></script>
  // publicPath: 'http://xxx.com/',

  /*-----------------------------------------------------------------------------------*/
  /*-----------------------------------------------------------------------------------*/

  // build输出路径
  // outputPath: '/dist_zyh',

  /*-----------------------------------------------------------------------------------*/
  /*-----------------------------------------------------------------------------------*/

  // build后标题
  // title: '标题',

  /*-----------------------------------------------------------------------------------*/
  /*-----------------------------------------------------------------------------------*/

  // browser、hash 和 memory,默认browser、hash
  // history: { type: 'browser' },

  /*-----------------------------------------------------------------------------------*/
  /*-----------------------------------------------------------------------------------*/

  // 浏览器兼容性配置
  targets: { ie: 11, },

  /*-----------------------------------------------------------------------------------*/
  /*-----------------------------------------------------------------------------------*/

  // 反向代理
  proxy: proxy['dev']

  /*-----------------------------------------------------------------------------------*/
  /*-----------------------------------------------------------------------------------*/

  // 修改less的变量
  // theme: defaultSetting.primaryColor,

  /*-----------------------------------------------------------------------------------*/
  /*-----------------------------------------------------------------------------------*/

  // 一、路由配置
  // routes: routes,
  routes,

  /*-----------------------------------------------------------------------------------*/
  /*-----------------------------------------------------------------------------------*/

  // 二、约定式路由【不常用】
  // 如果没有 routes 配置，Umi 会进入约定式路由模式，然后分析 src/pages 目录拿到路由配置。
  // 约定 src/layouts/index.tsx 为全局路由。返回一个 React 组件，并通过 props.children 渲染子组件。
  // 约定 [] 包裹的文件或文件夹为动态路由。
  // └── pages
  //   └── [post]
  //     ├── index.tsx
  //     └── comments.tsx
  //   └── users
  //     └── [id].tsx
  //   └── index.tsx

  /*-----------------------------------------------------------------------------------*/
  /*-----------------------------------------------------------------------------------*/

  // 是否关闭mock模拟请求
  // mock: false,

  /*-----------------------------------------------------------------------------------*/
  /*-----------------------------------------------------------------------------------*/

  // 开启dva，【使用Umi UI配置项】
  dva: {
    immer: true,
    hmr: false
  },

  /*-----------------------------------------------------------------------------------*/
  /*-----------------------------------------------------------------------------------*/

  // 国际化配置，【使用Umi UI配置项】
  locale: {
    default: 'zh-CN',
    antd: false,
    title: false,
    baseNavigator: true,
    baseSeparator: '-',
  },
  /*-----------------------------------------------------------------------------------*/
  /*-----------------------------------------------------------------------------------*/
  fastRefresh: {},
});
